#include <stdio.h>
int main()
{
    int arr[3][5] = {
        {11, 12, 13, 14, 15},
        {21, 22, 23, 24, 25},
        {31, 32, 33, 34, 35}};

    printf("%u %u\n", arr, arr + 1);
    printf("%u %u\n", &arr[0][0], &arr[0][0] + 1);

    int (*p)[5] = arr; // 数组的首地址
    printf("%u %u\n", p, p + 1);
    // 首先p是一个指针 指向的目标元素的一个数组 有五个元素 每个元素的类型是 int
    printf("%d\n", arr[2][4]);
    printf("%d\n", *(*(p + 2) + 4));
    printf("%d\n", *(*(arr + 2) + 4));

    printf("=============\n");

    int (*p1)[3][5] = &arr; // 数组的地址
    // 首先 p是一个指针 指向一个数组 3个元素 每个元素是五项的数组 元素类型是int
    printf("%u %u", p1, p1 + 1);
}